home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1999 July: Mac OS SDK / Dev.CD Jul 99 SDK1.toast / Development Kits / Mac OS / Apple Shared Library Manager / ASLM 2.0.1 Licensing Disk / Sources / CreateASLMInstaller < prev    next >
Encoding:
Text File  |  1996-11-19  |  4.6 KB  |  188 lines  |  [TEXT/MPS ]

  1. #
  2. #    File:        CreateASLMInstaller
  3. #
  4. #    Contains:    Script to create the ASLM installer disk. Part of the
  5. #                ASLM Licensing Disk.
  6. #
  7. #    Copyright:    © 1994 by Apple Computer, Inc., all rights reserved.
  8. #
  9. #
  10.  
  11.  
  12. #
  13. # Set PrjRoot and PrjName to your current project root and name
  14. #
  15. Set Saved "`Directory`"
  16. Directory ":::"
  17. Set PrjRoot `directory`
  18. Directory {saved}
  19. Set PrjName            "ASLM 2.0 Licensing Disk:"
  20. Set Installers        "{PrjRoot}{PrjName}Installers:"
  21. Set BuiltFolder        "{PrjRoot}{PrjName}Built:"
  22.  
  23. Export PrjName PrjRoot
  24.  
  25. Set System7Only    0
  26. Set International 0
  27. Set Parms ""
  28. Set doPPC    0
  29. Set do68K    0
  30. LOOP                                # Parse cmd line options
  31.     Break if "{1}" == ""
  32.     If "{1}" =~ /∂-«0,1»system7/
  33.         Set System7Only    1
  34.     Else If "{1}" =~ /∂-«0,1»international/
  35.         Set International 1
  36.     Else If "{1}" =~ /∂-«0,1»powerpc/
  37.         Set doPPC    1
  38.     Else If "{1}" =~ /∂-«0,1»68k/
  39.         Set do68K    1
  40.     End
  41.     SHIFT
  42. End
  43.  
  44. #
  45. # if neither -68k nor -powerpc were specifed then assume both are desired
  46. #
  47. If {doPPC} == 0 && {do68K} == 0
  48.     set doPPC 1
  49.     set do68K 1
  50. End
  51.  
  52. #
  53. # Create the Installers folder
  54. #
  55. If NOT `Exists "{Installers}"`
  56.     NewFolder "{Installers}"
  57. End
  58.  
  59. #
  60. # Get a timestamp
  61. #
  62. Set Date "`date -s -d` 12:00:00 PM"
  63.  
  64. #
  65. # Setup the 'vers' resource
  66. #
  67. rez -t rsrc -c RSED -o "{BuiltFolder}Vers2.RSRC" ASLMVers2.r
  68. Echo "INCLUDE ∂"{BuiltFolder}Vers2.RSRC∂";" >TmpVers.r
  69.  
  70. #
  71. # Setup the {Parms} variable
  72. #
  73. If {International}
  74.     Set Parms "{Parms} -d INTERNATIONAL=1"
  75. Else
  76.     Set Parms "{Parms} -d INTERNATIONAL=0"
  77. End
  78. If {System7Only}
  79.     Set Parms "{Parms} -d SYSTEM7ONLY=1"
  80. Else
  81.     Set Parms "{Parms} -d SYSTEM7ONLY=0"
  82. End
  83.  
  84. #
  85. # Find a good name for our installer disk and create the folder
  86. #
  87. if {do68K} == 0
  88.     Set InstallerDiskName     "ASLM Installer for PowerPC:"
  89. else if {doPPC} == 0 
  90.     Set InstallerDiskName     "ASLM Installer for 68k:"
  91. else
  92.     Set InstallerDiskName     "ASLM Installer:"
  93. end
  94. Set InstallFolder     "{Installers}{InstallerDiskName}"
  95. Delete -i -y "{InstallFolder}"
  96. NewFolder "{InstallFolder}"
  97.  
  98. #
  99. # Locate and create subfolders in the installer folder
  100. #
  101. Set FileFolder         "{InstallFolder}Shared Library Manager Files:"
  102. Set IntlFolder         "{InstallFolder}Shared Library Manager Files:International:"
  103. NewFolder "{FileFolder}"
  104. If {International}
  105.     NewFolder "{IntlFolder}"
  106. End
  107.  
  108. #
  109. # Copy the Installer file
  110. #
  111. (Evaluate "`Files -n -q -x m "{BuiltFolder}Installer"`" =~ /≈[ ∂t]+([0-9]+∂/[0-9]+∂/[0-9]+≈)®1/) ∑∑ Dev:Null
  112. Duplicate "{BuiltFolder}Installer" "{InstallFolder}Installer"
  113. rez -a -o "{InstallFolder}Installer" TmpVers.r
  114. SetFile -m "{®1}" "{InstallFolder}Installer"
  115.  
  116. #
  117. # Copy the "ASLM Resources" file. Only copy the resources we will need
  118. # or ScriptCheck will give a warning for unused resources.
  119. #
  120.  
  121. Echo "" >tmp.r
  122. if {doPPC}
  123.     Echo "Include ∂"{BuiltFolder}ASLM Resources∂" ∂'AINI∂' (-32702);" >>tmp.r
  124. end
  125. if {do68K}
  126.     Echo "Include ∂"{BuiltFolder}ASLM Resources∂" ∂'AINI∂' (-32700);" >>tmp.r
  127.     Echo "Include ∂"{BuiltFolder}ASLM Resources∂" ∂'AINI∂' (-32700) as 'INIT' (19, $$Name, $$Attributes);" >>tmp.r
  128. end
  129. rez -c RSED -t rsrc -o "{FileFolder}ASLM Resources" tmp.r
  130. delete -i tmp.r
  131. rez -a TmpVers.r -o "{FileFolder}ASLM Resources"
  132. SetFile -m "{Date}" -d "{Date}" "{FileFolder}ASLM Resources"
  133.  
  134. #
  135. # Copy the "EtherTalk Phase 2" file
  136. #
  137. Duplicate "{BuiltFolder}EtherTalk Phase 2" "{FileFolder}EtherTalk Phase 2"
  138. rez -a -o "{FileFolder}EtherTalk Phase 2" TmpVers.r
  139. SetFile -m "{Date}" -d "{Date}" "{FileFolder}EtherTalk Phase 2"
  140.  
  141. #
  142. # Copy the "Shared Library Manager" file
  143. #
  144. if {do68K}
  145.     Duplicate "{BuiltFolder}Shared Library Manager" "{FileFolder}Shared Library Manager"
  146.     rez -a -o "{FileFolder}Shared Library Manager" TmpVers.r
  147.     SetFile -m "{Date}" -d "{Date}" "{FileFolder}Shared Library Manager"
  148. End
  149. if {doPPC}
  150.     Duplicate "{BuiltFolder}Shared Library Manager PPC" "{FileFolder}Shared Library Manager PPC"
  151.     rez -a -o "{FileFolder}Shared Library Manager PPC" TmpVers.r
  152.     SetFile -m "{Date}" -d "{Date}" "{FileFolder}Shared Library Manager PPC"
  153. End
  154.  
  155. #
  156. # Create "ASLM Installer" script
  157. #
  158. If {doPPC}
  159.     Set RezParms "-d GENERATINGPOWERPC=1"
  160. Else
  161.     Set RezParms "-d GENERATINGPOWERPC=0"
  162. End
  163. If {do68k}
  164.     Set RezParms "{RezParms} -d GENERATING68K=1"
  165. Else
  166.     Set RezParms "{RezParms} -d GENERATING68K=0"
  167. End
  168. Rez {Parms} -c kajr -t kajr -i ":" ∂
  169.     -d InstallerDiskName="∂"{InstallerDiskName}∂"" {RezParms} ∂
  170.     -s "{BuiltFolder}" -s : ASLMMasterScript.r ∂
  171.     -o "{InstallFolder}Install Script"
  172.  
  173. #
  174. # Run ScriptCheck. ScriptCheck doesn't seem to like path names over 64 characters
  175. # so switch into the directory containing the Install Script first.
  176. #
  177. Set Saved "`Directory`"
  178. Directory "{InstallFolder}"
  179. "{BuiltFolder}ScriptCheck" -h -r -s -d -l 2 -p "Install Script"
  180. Directory {saved}
  181.  
  182. #
  183. # Do some cleaning up
  184. #
  185. Delete -i tmp.r
  186. Delete -i TmpVers.r
  187. Delete -i "{BuiltFolder}Vers2.RSRC"
  188.